package top.ed333.mcplugins.configurableevents;

import net.md_5.bungee.api.ChatColor;
import org.bukkit.Bukkit;
import org.bukkit.command.ConsoleCommandSender;

public class ConsoleSender {
    private static boolean useDebug = false;
    private static final ConsoleCommandSender consoleSender = Bukkit.getConsoleSender();

    public static void message(String msg, String suffix) {
        consoleSender.sendMessage(translateColor("&2[&3ConfigurableEvents&2] " + suffix + "&f: &f" + msg));
    }

    public static void message(String msg, String suffix, Object... args) {
        for (int i = 0; i < args.length; i++) {
            msg = msg.replace("{" + i + "}", args[i].toString());
        }
        message(msg, suffix);
    }

    public static void warn(String msg) {
        message(msg, "&e警告");
   }

    public static void warn(String msg, Object... args) {
        message(msg, "&e警告", args);
    }

    public static void info(String msg) {
        message(msg, "&a信息");
   }

   public static void info(String msg, Object... args) {
        message(msg, "&a信息", args);
   }

    public static void err(String msg) {
        message(msg, "&c错误");
    }

    public static void err(String msg, Object... args) {
        message(msg, "&c错误", args);
    }

    public static void debug(String msg) {
        if (useDebug) {
            message(msg, "&b调试");
        }
    }

    public static void debug(String msg, Object... args) {
        if (useDebug) {
            message(msg, "&b调试", args);
        }
    }

    public static void setDEBUG(boolean state) {
        useDebug = state;
    }
    
    private static String translateColor(String txt) {
        return ChatColor.translateAlternateColorCodes('&', txt);
    }
}
